package cn.gov.pbc.gd.credit.core.service.report;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.liu.jbase.PageListVo;
import com.liu.jbase.ResultVo;
import com.liu.jbase.service.IBaseService;

import cn.gov.pbc.gd.credit.vo.report.query.ReportQueryVo;
import cn.gov.pbc.gd.credit.vo.report.query.ResQueryDetailVo;
import cn.gov.pbc.gd.credit.vo.report.query.ResQueryTotalVo;

/**
 * @datatime 2017年8月28日 下午5:16:01
 * @author liuxingmi
 * @desc 查询统计
 */
public interface IReportQueryService extends IBaseService<ResQueryTotalVo, ReportQueryVo>{

	/**
	 * @datetime 2017年8月28日 下午5:16:54
	 * @author liuxingmi
	 * @desc 查询统计
	 * @param vo
	 * @param request
	 * @return ResultVo<List<ResQueryTotalVo>>
	 */
	public ResultVo<List<ResQueryTotalVo>> queryTotal(ReportQueryVo vo, HttpServletRequest request);
	
	/**
	 * @datetime 2017年8月29日 下午8:51:21
	 * @author liuxingmi
	 * @desc 导出excel
	 * @param vo
	 * @param request
	 * @param response
	 * @return ResultVo<String>
	 */
	public ResultVo<String> exportQueryTotal(ReportQueryVo vo, HttpServletRequest request, HttpServletResponse response);
	
	/**
	 * @datetime 2017年9月20日 下午3:08:52
	 * @author liuxingmi
	 * @desc 导出明细列表
	 * @param vo
	 * @param request
	 * @param response
	 * @return ResultVo<List<ResQueryDetailVo>>
	 */
	public ResultVo<List<ResQueryDetailVo>> exportList(ReportQueryVo vo, HttpServletRequest request, HttpServletResponse response);
	
	/**
	 * @datetime 2017年9月20日 下午3:09:10
	 * @author liuxingmi
	 * @desc 分页查询
	 * @param vo
	 * @param request
	 * @return ResultVo<PageListVo<ResQueryDetailVo>>
	 */
	public ResultVo<PageListVo<ResQueryDetailVo>> pageList(ReportQueryVo vo, HttpServletRequest request);
	
	
}
